The present invention relates to digital communication networks, and more particularly to a method and system to facilitate the network designer""s task of predefining an efficient and reliable inter-node meshing of Control Point to Control Point (CP-CP) sessions for an Advanced Peer to Peer Networking (APPN) network.
ADVANCED PEER TO PEER NETWORKING (APPN)
Advanced Peer to Peer Networking (APPN) is an architecture for the enhanced use of dynamic topology mechanisms and dynamic directory services. Unlike the Subarea protocols of Systems Network Architecture (SNA), APPN allows for dynamic address resolution, route determination and Logical Unit (LU) registration. The static routes and Logical Unit (LU) definitions of Subarea SNA are replaced by the dynamic topology and route determination of APPN.
APPN is a structured communication architecture. The components of an APPN node are described and the interface between components within nodes are defined in order to provide a method for creating an APPN node. The APPN architecture has defined three types of nodes. Each of these types provides a different level of support for the APPN architecture.
A first type of node is a Low Entry Networking or LEN node. A LEN node is a migration path from the Subarea SNA network architecture. This type of node allows Subarea devices to be connected to APPN nodes while not requiring the devices to implement any APPN logic. This migratory path allows the Subarea devices to connect to APPN nodes as LEN nodes. Although definitions within the device and within the APPN node the LEN node attaches to are required for this connection, the LEN node is a rudimentary gateway into the APPN network.
A second type of node is an End Node or EN. The End Node (EN), as the name implies, is at the outer perimeter of an APPN network. The application LUs are normally located on the ENs. For this reason, VTAM mainframes often migrate into End Nodes (Ens) when migrating from Subarea to APPN. The EN provides all APPN services except for intermediate node routing and network topology; these functions are those of a Network Node (NN). The EN does provide such functions as: Control Point to Control Point (CP-CP) session support; and participation in directory searches. By not providing complete directory services, routing and route calculation capabilities, the overhead of these tasks, as implemented in a Network Node, is reduced. This extra capacity is thus available to be utilized for the processing of the associated LUs and their related transaction programs.
Network Node (NN):
The enhanced services of an APPN network are realized through the Network Node (NN). The Network Node provides all the services of an End Node (EN) but includes full routing, topology, and directory services capabilities. It is through these services that the dynamic benefits of APPN are gained. The Network Node (NN) provides support for its affiliated End Nodes (ENs). It is then called the NN Server (NNS) of the affiliated ENs.
The heart of the APPN node is the Control Point (CP). The CP provides the actual management and interface to other APPN nodes. The CP is where the APPN protocol is actually implemented. The Control Point to Control Point (CP-CP) session is the foundation of APPN. Through these sessions, Network Nodes communicate control information and gain awareness of their neighbors and, from them, the awareness of the rest of the APPN network. CP-CP sessions between adjacent APPN nodes always come by pairs. Each session is unidirectional (the two sessions are in the opposite direction) and is persistent. There are two types of CP-CP session pairs, between two Network Nodes and between End Nodes and their Network Node Servers. CP-CP session pairs between an End Node and its Network Node Server are not addressed by this invention and will not be discussed further.
More information concerning APPN can be found in the following publications incorporated herewith by reference:
xe2x80x9cSNA, APPN, HPR and TCP/IP Integrationxe2x80x9d, David G. Matusow, McGraw-Hill Series on Computer Communications, 1996.
xe2x80x9cInside APPNxe2x80x94The Essential Guide to the Next Generation SNAxe2x80x9d, IBM International Technical Support Organization, SG24-3669-03, Fourth Edition, Jun. 1997.
CONTROL POINT TO CONTROL POINT SESSION PAIRS
The Advanced Peer to Peer Networking (APPN) architecture defines and makes use of a controlled logical meshing of the multiple APPN Network Nodes (NN) which compose an APPN network. This meshing is used by the APPN Network Nodes for the exchange of the network control information (such as the network topology information or queries for locating resources) that any network must transport to assure proper and useful functioning of the said network. This network control information is used by the Control Points (CP) of the network nodes to locate resources (typically Logical Units) across the network and to establish efficient communication (typically sessions between Logical Units) between these resources. The exchange of network control information between the Control Points takes place from the time the nodes are brought up and activate their connections (links) to the network and lasts as long as these nodes stay up and are physically connected to the network. Directly physically interconnected network nodes, called adjacent nodes in the sense that there are no intermediate network nodes in between them, establish over one of their common links (There could be many of these links, for reliability, capacity or cost reasons as multiple low-speed links may be less expensive than a higher capacity link), a pair of unidirectional network control connections, one per direction of flow. Each of these network control connections is called in the APPN parlance a (unidirectional) xe2x80x9cControl Point to Control Point sessionxe2x80x9d (CP-CP session). A pair of these CP-CP sessions (always in the opposite direction) is called a (bidirectional) xe2x80x9cCP-CP session pairxe2x80x9d. A CP-CP session pair couples the Control Points (CPs) of adjacent network nodes and allows bidirectional exchange of network control information between said Control Points (CPs).
The APPN architecture specifies a maximum (and defines the protocols to insure this) of one CP-CP session pair between any two adjacent nodes whatever the number of parallel links (called Parallel Transmission Groups) between the two adjacent nodes. However, a node can have any number of CP-CP session pairs to different adjacent nodes. A failure of the CP-CP connectivity (for example if the link fails) triggers the setup of an alternate CP-CP session pair on an available parallel link, if one exists with the capability to carry CP-CP session pairs. However, the capability for a link to support the setup of CP-CP session pairs remains optional and is based on the decision of the network designer who defines the link capabilities and optionally enables the support of a CP-CP session pair for this link. What is however specified by the APPN architecture is that, for the network to function properly, every individual network node must at any time be connected to the network it belongs to via at least one CP-CP session pair. Nodes and/or set of interconnected nodes not connected to the network, intentionally or because of a temporary failure on a session pair (because for example of a link outage), immediately result in the splitting of the network in disjoint partitions and therefore lead to a loss of connectivity for the exchange of network control information.
Such a loss of connectivity results in a de-synchronization of the network control information between the created partitions. While the APPN architecture has defined means to allow for an optimized re-synchronization between partitions that join (for example when the link outage is circumvented), there is always a period during which the network node""s individual knowledge of topology information are desynchronized. This results in temporary loss of connectivity or in the setting of sub-optimized routes (as the latest network topology is not available).
Among the characteristics associated to an APPN link, is the capability for the link to support a CP-CP session pair. When parallel links (also called parallel Transmission Groups) are available between two Network Nodes (NN) and some or all of these have been defined as enabled for CP-CP session pairs, the first enabled link that is activated is selected for supporting the single CP-CP session pair between the adjacent Network Nodes.
Selecting eligible links to be used for CP-CP session pairs is a network designer""s problem and is not an easy one. Consequences of bad choices may have significant effects on the network behavior in terms of reliability and performances. The APPN architecture disseminates the network control information over all the network links that carry CP-CP session pairs. Each network control message issued by any node within the network, flows at least once over each link transporting a CP-CP session pair and therefore is transmitted to every network node within the network. The spectrum of choices for defining a logical meshing of CP-CP session pairs ranges between two extreme possibilities: Maximum meshing and minimum meshing. A maximum meshing where all links are defined as being usable to transport CP-CP session pairs. A minimum meshing that insures the connection of all Network Nodes to the network with the establishment of a minimum number of CP-CP session pairs. The effects that such extreme choices have on the network behavior will now be discussed.
MAXIMUM MESHING
There is an obvious solution to minimize undesirable behaviors (disjoined partition of the network, de-synchronization of network control information) in case of link failures. This solution consists in letting the network designer define every link as a candidate for carrying a CP-CP session pair. While this solution does make a lot of sense for small networks with low connectivity between network nodes, this solution is certainly undesirable in an highly meshed environment in particular because of two undesirable side effects. First, the overhead induced by the network control flows (which could really be significant in a large APPN network) is replicated over all the links within the network that carry a CP-CP session pair. Second, while there are some APPN protocols that were developed to insure a network control message is only processed once by a network node, the network nodes are interrupted, just to discover that the network control messages they just received are replicates that have already been processed. Also, the same message must be replicated by the sender onto all the links over which this network node has a CP-CP session pair active, which leads to unnecessary overhead.
This is the more reliable solution but with the highest overhead. Even in this extreme case, not all links are carrying a CP-CP session pair in a running network as only one single pair at a time can exist between a pair of adjacent nodes. Note: In case of parallel links, when one of the links has been defined as eligible to carry a CP-CP session pair, defining one or multiple parallel links as also eligible does not create more control traffic overhead across the network but improves reliability.
MINIMUM MESHING
In this case, the network designer insures there is a minimum number of CP-CP session pairs across the whole network. While this meshing configuration completely eliminates all the undesirable side effects of the xe2x80x9cMaximum Meshingxe2x80x9d solution, the drawback is that the failure of a link immediately involves the creation of disjoined partitions of the network. The network partitions will stay disjoined until the link recovers. This is the less reliable solution but with the lowest overhead.
The selection of a logical meshing of CP-CP session pairs across the network is always a compromise between the network reliability and the network overhead induced by the network control traffic. The problem is to define a logical meshing of CP-CP session pairs that offers an acceptable compromise between the network control traffic overhead and the network reliability.
It is one purpose of the present invention to define a reliable meshing of CP-CP session pairs, taking into consideration the possibility of single link failures and optionally the possibility of a node failure.
While preserving the reliability objective, it is a further purpose of the present invention to have as few CP-CP session pairs as possible across the network to minimize as much as possible the amount of unnecessary redundant control information that the network must transport and that the network nodes must process. The objective is to reduce the network overhead.
In accomplishing these purposes, the present invention is directed to a method and system for defining an efficient and reliable meshing of node to node connections in a communication network comprising a plurality of nodes interconnected with transmission links or parallel transmission groups, each parallel transmission group comprising a plurality of links.